/**
 * File: MaqBean.java
 * Created by: mhaimel
 * Created on: 24 Jun 2009
 * CVS:  $Id: MaqBean.java,v 1.1 2009/08/05 15:16:11 mhaimel Exp $
 */
package uk.ac.ebi.curtain.controller.maq;

import java.io.File;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

import uk.ac.ebi.curtain.utils.file.FileInfo;

/**
 * @author mhaimel
 *
 */
public class MaqBean implements Serializable {
	private File readDir;
	private File contigDir;
	private List<File> contigBfaList = new ArrayList<File>();
	private List<FileInfo> contigFiles = new ArrayList<FileInfo>();
	private List<FileInfo> readBfqList = new ArrayList<FileInfo>();
	private List<FileInfo> readFiles = new ArrayList<FileInfo>();
	
	public MaqBean() {
		// nothing
	}
	
	public MaqBean(MaqBean bean) {
		super();
		this.contigBfaList.addAll(bean.contigBfaList);
		this.contigDir = bean.contigDir;
		this.contigFiles.addAll(bean.contigFiles);
		this.readBfqList.addAll(bean.readBfqList);
		this.readDir = bean.readDir;
		this.readFiles.addAll(bean.readFiles);
	}
	public File getReadDir() {
		return readDir;
	}
	public void setReadDir(File readDir) {
		this.readDir = readDir;
	}
	public File getContigDir() {
		return contigDir;
	}
	public void setContigDir(File contigDir) {
		this.contigDir = contigDir;
	}
	public List<File> getContigBfaList() {
		return contigBfaList;
	}
	public void setContigBfaList(List<File> contigBfaList) {
		this.contigBfaList = contigBfaList;
	}

	public List<FileInfo> getReadBfqList() {
		return readBfqList;
	}
	public void setReadBfqList(List<FileInfo> readBfqList) {
		this.readBfqList = readBfqList;
	}
	
	
	@Override
	public String toString() {
		return ToStringBuilder.reflectionToString(this,ToStringStyle.SHORT_PREFIX_STYLE);
	}
	public void setContigFiles(List<FileInfo> contigFiles) {
		this.contigFiles = contigFiles;
	}
	public List<FileInfo> getContigFiles() {
		return contigFiles;
	}
	public void setReadFiles(List<FileInfo> readFiles) {
		this.readFiles = readFiles;
	}
	public List<FileInfo> getReadFiles() {
		return readFiles;
	}
}
